"""
编写一个简单的聊天程序；其中一个进程发送文字聊天消息（从键盘输入文字消息）；另外一个进程接收并打印消息；
"""
import os
import sys
from multiprocessing import Process,Queue

# 在python中，主进程允许从键盘录入值。而子进程是不允许的。
def send(q):
    # q.put('test')
    while True:
        try:
            message = input('>>>')
            q.put(message)
        except:
            pass


def print_chat(q):
    s = q.get()
    print("from another:",s)


if __name__ == '__main__':
    fn = sys.stdin.fileno()
    sys.stdin = os.fdopen(fn)
    # p = Process(target=print_chat, args=(msg,))
    # while True:
    #     msg = input(">>>")
    p = Process()
    p1 = Process(target=send, args=(p,))
    p2 = Process(target=print_chat, args=(p,))
    p1.start()
    p2.start()



